package com.jf.cloud.service.sysmanager.support.connect;

/**
 * �ַ���������
 * @author ouyang ����ʱ�䣺May 22, 2012 9:11:06 AM
 */
public class Encoding {
   public static String GBK="GBK";
   public static String UTF8="UTF-8";
   public static String GB2312="GB2312";
   /**
	 *  GBK-------->UTF8
	 * @param chenese
	 * @return
	 */          //�ַ���ת��   GBK ----UTF 
	 public static byte[] gbk2utf8(String chenese){
		   char c[] = chenese.toCharArray();
		         byte [] fullByte =new byte[3*c.length];
		         for(int i=0; i<c.length; i++){
		          int m = (int)c[i];
		          String word = Integer.toBinaryString(m); 
		          StringBuffer sb = new StringBuffer();
		          int len = 16 - word.length();
		          for(int j=0; j<len; j++){
		           sb.append("0");
		          }
		          sb.append(word);
		          sb.insert(0, "1110");
		          sb.insert(8, "10");
		          sb.insert(16, "10");
	              String s1 = sb.substring(0, 8);          
		          String s2 = sb.substring(8, 16);          
		          String s3 = sb.substring(16);       
		          byte b0 = Integer.valueOf(s1, 2).byteValue();
		          byte b1 = Integer.valueOf(s2, 2).byteValue();
		          byte b2 = Integer.valueOf(s3, 2).byteValue();
		          byte[] bf = new byte[3];
		          bf[0] = b0;
		          fullByte[i*3] = bf[0];
		          bf[1] = b1;
		          fullByte[i*3+1] = bf[1];
		          bf[2] = b2;
		          fullByte[i*3+2] = bf[2];  
		         }
		         return fullByte;
		 }
} 
